package leedcode_path.shuzhu;

public class 螺旋矩阵 {
//    public int[][] generateMatrix(int n) {
//        int loop=0;
//        int[][] res=new int[n][n];
//        int start=0;
//        int count=1;
//        int i,j;
//
//        while (loop++<n/2){
////            第一条边
//            for (j=start;  j<n-loop ; j++) {
//                res[start][j]=count++;
//            }
//            for (i=start;i <n-loop ; i++) {
//                res[i][j]=count++;
//            }
//            for (; j >start ; j--) {
//                res[i][j]=count++;
//            }
//            for (;i>start;i--){
//                res[i][j]=count++;
//            }
//            start++;
//        }
//        if (n%2!=0){
//            res[n/2][n/2]=count;
//        }
//        return res;
//    }
//
//    public static void main(String[] args) {
//        螺旋矩阵 tst=new 螺旋矩阵();
//
//        System.out.println(tst.generateMatrix(3).toString());
//
//    }
public int[][] generateMatrix(int n) {

    int[][] res=new int[n][n];
    int start=0;
    int count=1;
    int loop=0;
    int j,i;

    while (loop++<n/2){
        for (  i= start; i < n-loop; i++) {
            res[start][i]=count++;
        }
        for (j=start;j<n-loop;j++){
            res[j][i]=count++;
        }
        for ( ; j>start ; j--) {
            res[i][j]=count++;
        }
        for (; i >start ; i--) {
            res[i][j]=count++;
        }
        start++;
    }
    if (n%2!=0){
        res[n/2][n/2]=count;
    }
    return res;

}
}
